A content delivery network (CDN) (also known as a content distribution network) is used for delivering programs to users via user devices. The content delivery network stores and delivers the programs to users either on-demand, according to a program schedule, or both.